41 TT = 17:BT = 24: GOSUB 671: GOSUB 681: VTAB 19: GOSUB 721:W = 38:B = 10:T = 3:L = 1:X = 1: GOSUB 841: IF E = 1 THEN GOSUB 691: PRINT "To get the computer to print the": PRINT "contents of A, please type:": PRINT : PRINT "20 PRINT A": GOTO 41
51 SL = 2:BS = X: GOSUB 891: IF LN$ < >"20" THEN GOSUB 691: PRINT "You should start this PRINT": PRINT "statement by typing 20. Please": PRINT "try again.": GOTO 41
61 X = X +2: GOSUB 841: IF E = 1 THEN GOSUB 691: PRINT "You typed "; MID$ (BU$,BS)".": PRINT "You should follow the line": PRINT "number with PRINT A. Please": PRINT "try again.": GOTO 41
71 GOSUB 901: ON E = 1 GOTO 41: GOSUB 841: IF E = 1 THEN GOSUB 691: PRINT "You typed "; MID$ (BU$,BS)".": PRINT "You should type PRINT and": PRINT "follow it with the name of the": PRINT "variable you want to print (A).": GOTO 41
81 IF MID$ (AN$,X,1) = CHR$(34) THEN GOSUB 691: PRINT "You typed "; MID$ (BU$,BS)".": PRINT "If you enclose the variable in": PRINT "quotation marks, you will print": PRINT "the letter A rather the contents": PRINT "of the variable. Try again.": GOTO 41
91 SL = LEN(AN$): FOR Y = LEN(AN$) TO X STEP -1: IF MID$ (AN$,Y,1) = " " THEN SL = SL -1
101 IF MID$ (AN$,Y,1) < >" " THEN Y = X
111 NEXT Y:VA$(1) = MID$ (AN$,X,SL -X +1): IF VA$(1) < >"A" THEN GOSUB 691: PRINT "You typed "; MID$ (BU$,BS)".": PRINT "You should follow PRINT with only": PRINT "the variable name (A) to print": PRINT "the contents of A. Try again.": GOTO 41
121 TT = 0:BT = 12: GOSUB 671: GOSUB 611:ET = 1
131 TT = 20:BT = 24: GOSUB 671: GOSUB 681: VTAB 21: GOSUB 721:W = 38:B = 9:T = 3:L = 1:X = 1: GOSUB 841: IF E = 1 THEN GOSUB 691: PRINT "You should start with line 30,": PRINT "then type the END statement.": PRINT "Try again.": GOTO 131
141 SL = 2:BS = X: GOSUB 891: IF LN$ < >"30" THEN GOSUB 691: PRINT "You should put the END statement": PRINT "on line 30. Please try again.": GOTO 131
151 X = X +2: GOSUB 841: IF E = 1 THEN GOSUB 691: PRINT "You typed "; MID$ (BU$,BS)".": PRINT "You should follow the line": PRINT "number with END. Please try": PRINT "again.": GOTO 131
161 IF MID$ (AN$,X,3) < >"END" THEN GOSUB 691: PRINT "You typed "; MID$ (BU$,BS)".": PRINT "You should type END after": PRINT "the line number. Try again.": GOTO 131
251 TT = 21:BT = 24: GOSUB 671: GOSUB 681: VTAB 22:CP = 0: GOSUB 721:W = 38:B = 10:T = 3:L = 1:X = 1: GOSUB 841: IF E = 1 THEN GOSUB 691: PRINT "You should copy the LET statement": PRINT "in line 10, but replace 33 with": PRINT "another number. Try it now.": GOTO 251
261 SL = 2:BS = X: GOSUB 891: IF LN$ < >"10" THEN GOSUB 691: PRINT "You should change the LET": PRINT "statement in line 10 by first": PRINT "typing 10. Try again.": GOTO 251
271 X = X +2: GOSUB 841: IF E = 1 THEN GOSUB 691: PRINT "You typed "; MID$ (BU$,BS)".": PRINT "You should follow the line": PRINT "number with LET A = your number.": PRINT "Please try again.": GOTO 251
281 GOSUB 931: ON E = 1 GOTO 251:XP = X: GOSUB 841
291 IF E = 1 THEN GOSUB 691: PRINT "You typed "; MID$ (BU$,BS)".": PRINT "You should assign a number to A": PRINT "by typing LET A = some number.": PRINT "Please try again.": GOTO 251
301 GOSUB 951: ON E = 1 GOTO 251:EP = SL: FOR Y = EP -1 TO XP STEP -1: IF MID$ (AN$,Y,1) = " " THEN SL = SL -1
311 IF MID$ (AN$,Y,1) < >" " THEN Y = XP
321 NEXT Y: IF SL = XP THEN E = 1: GOTO 291
331 VA$(1) = MID$ (AN$,X,SL -X): IF VA$(1) < >"A" THEN GOSUB 691: PRINT "You typed "; MID$ (BU$,BS)".": PRINT "Normally you could choose the": PRINT "variable name, but you should use": PRINT "A this time. Try again.": GOTO 251
341 EP = EP +1: GOSUB 1161: IF E = 1 THEN GOSUB 691: PRINT "You typed "; MID$ (BU$,BS)".": PRINT "For this simulation you should": PRINT "follow the equal mark with only": PRINT "one number without letters or": PRINT "characters. Try again.": GOTO 251
351 VA$(2) = MID$ (AN$,EP): IF LEN(VA$(2)) >8 THEN GOSUB 691: PRINT "You typed "; MID$ (BU$,BS)".": PRINT "A number that long won't fit in": PRINT "this box. Please use a number": PRINT "less than 8 characters long.": GOTO 251
355 VA(2) = VAL( MID$ (AN$,EP))
361 IF VA(2) = 33 THEN GOSUB 691: PRINT "You typed "; MID$ (BU$,BS)".": PRINT "You should type in a different": PRINT "value for A so that A is": PRINT "changed. Please try again.": GOTO 251
381 TT = 20:BT = 24: GOSUB 671: GOSUB 681: VTAB 21: GOSUB 721:W = 38:B = 9:T = 3:L = 1:X = 1: GOSUB 841: IF E = 1 THEN GOSUB 691: PRINT "You must type NEW and": PRINT "press RETURN to clear memory.": PRINT "Please try it now.": GOTO 381
391 IF MID$ (AN$,X,3) < >"NEW" THEN GOSUB 691: PRINT "You typed " MID$ (BU$,BS)".": PRINT "NEW is the command you should use": PRINT "to clear memory.": PRINT "Please try again.": GOTO 381
421 TT = 12:BT = 24: GOSUB 671: GOSUB 681: VTAB 14: GOSUB 721:W = 38:B = 10:T = 3:L = 1:X = 1: GOSUB 841: IF E = 1 THEN GOSUB 691: PRINT "Please load the NUMBER program": PRINT "by typing LOAD NUMBER. Try again.": GOTO 421
431 BS = X: GOSUB 1031: ON E = 1 GOTO 421: GOSUB 841: IF E = 1 THEN GOSUB 691: PRINT "You typed " MID$ (BU$,BS)".": PRINT "You must follow the LOAD command": PRINT "with the program name (NUMBER).": PRINT "Please try again.": GOTO 421
441 IF MID$ (AN$,X,6) < >"NUMBER" THEN GOSUB 691: PRINT "You typed "; MID$ (BU$,BS)".": PRINT "The only way to load the NUMBER": PRINT "program is to call it by the": PRINT "right name. Please try again.": GOTO 421
451 LD = 3:X = X +5: GOSUB 1091: ON E = 1 GOTO 421
461 PRINT : PRINT CHR$(4);"RUN NUMERIC2": END
471 POKE -16368,0
481 P = PEEK( -16384):TE = TE +1: ON P = 155 GOTO 1341: ON P < >13 GOTO 491: IF TE <225 THEN 481
491 IF P = 141 THEN TE = 0: CALL -998: RETURN
501 M$ = "Press RETURN": GOSUB 511: FOR Z = 1 TO 700: NEXT Z:M$ = "_____________": GOSUB 511: FOR Z = 1 TO 700: NEXT Z: GOTO 481
931 E = 0: IF MID$ (AN$,X,3) = "LET" THEN X = X +3: RETURN
941 E = 1: GOSUB 691: PRINT "You typed "; MID$ (AN$,BS);".": PRINT "You should follow the": PRINT "line number with a LET statement.": PRINT "Please try again.": RETURN
951 E = 0: FOR Y = X TO LEN(AN$): IF MID$ (AN$,Y,1) = "=" THEN SL = Y:E = 2:Y = LEN(AN$)
961 NEXT Y: IF E < >2 THEN E = 1: GOSUB 691: PRINT "You typed " MID$ (BU$,BS)".": PRINT "You must follow the variable": PRINT "with an equal sign (=) and a": PRINT "number. Please try again."
971 RETURN
981 ON SL > LEN(AN$) GOTO 1001: IF MID$ (AN$,SL,1) < > CHR$(34) THEN SL = SL +1: GOTO 981
991 IF MID$ (AN$,SL,1) = CHR$(34) THEN RETURN
1001 E = 1: GOSUB 691: PRINT "You typed "; MID$ (BU$,BS);".": PRINT "You forgot to end your statement": PRINT "with a quotation mark. Please": PRINT "try again.": RETURN
1011 E = 1: GOSUB 691: PRINT "You typed "; MID$ (BU$,BS);".": PRINT "It would help for now if you": PRINT "would enclose something inside": PRINT "the quotations. Try again.": RETURN
1021 E = 1: GOSUB 691: PRINT "You typed "; MID$ (AN$,BS);".": PRINT "To save a program to disk you": PRINT "should begin by typing SAVE.": PRINT "Please try again.": RETURN
1031 E = 0: IF MID$ (AN$,X,4) = "LOAD" THEN X = X +4: RETURN
1041 E = 1: GOSUB 691: PRINT "You typed "; MID$ (AN$,BS);".": PRINT "To load a program into memory": PRINT "you should begin by typing LOAD.": PRINT "Please try again.": RETURN
1051 E = 0: IF MID$ (AN$,X,3) = "RUN" THEN X = X +2: RETURN
1061 E = 1: GOSUB 691: PRINT "You typed "; MID$ (BU$,BS);".": PRINT "You should have typed RUN.": PRINT "Please try again.": RETURN
1071 E = 0: IF MID$ (AN$,X,4) = "LIST" THEN X = X +3: RETURN
1081 E = 1: GOSUB 691: PRINT "You typed "; MID$ (BU$,BS);".": PRINT "You should have typed LIST.": PRINT "Please try again.": RETURN
1091 E = 0: IF X > = LEN(AN$) THEN 1151
1101 FOR Y = X +1 TO LEN(AN$): IF MID$ (AN$,Y,1) < >" " THEN E = 1
1111 NEXT Y: IF LD = 1 AND E = 1 THEN GOSUB 691: PRINT "You typed "; MID$ (BU$,BS)".": PRINT "You shouldn't type anything after": PRINT "the line number if you wish to": PRINT "to delete a line. Try again.": RETURN
1121 IF LD = 2 AND E = 1 THEN GOSUB 691: PRINT "You typed "; MID$ (BU$,BS)".": PRINT "Please don't type anything after": PRINT "the program name or it will be-": PRINT "come part of the name. Try again.": RETURN
1131 IF LD = 3 AND E = 1 THEN GOSUB 691: PRINT "You typed "; MID$ (BU$,BS)".": PRINT "If you type anything after the": PRINT "program name the computer will": PRINT "try to find the wrong program.": PRINT "Please try again.": RETURN
1141 IF E = 1 THEN GOSUB 691: PRINT "You typed "; MID$ (BU$,BS)".": PRINT "Please don't type anything after": PRINT "the command. It will just": PRINT "complicate things. Try again.": RETURN
1151 RETURN
1161 IF EP > LEN(AN$) THEN E = 1: RETURN
1171 E = 0: FOR Y = EP TO LEN(AN$): IF MID$ (AN$,Y,1) < >" " THEN E = 2:Y = LEN(AN$)
1181 NEXT Y: IF E < >2 THEN E = 1: RETURN
1191 E = 0:MM = 0:PM = 0: FOR Y = EP TO LEN(AN$): ON ASC( MID$ (AN$,Y,1)) < >46 GOTO 1211:PM = PM +1
1201 IF MID$ (AN$,Y,2) = ".-" THEN EP = Y
1211 IF ASC( MID$ (AN$,Y,1)) = 45 THEN MM = MM +1
1221 IF MM >1 OR PM >1 THEN E = 1:Y = LEN(AN$): GOTO 1251
1231 IF ASC( MID$ (AN$,Y,1)) = 32 THEN 1251
1241 IF ASC( MID$ (AN$,Y,1)) <45 OR ASC( MID$ (AN$,Y,1)) = 47 OR ASC( MID$ (AN$,Y,1)) >57 THEN E = 1:Y = LEN(AN$)
1251 NEXT Y: RETURN
1261 TT = TT(1):BT = BT(1):W = W(1):B = B(1):T = T(1):L = L(1): GOSUB 671: GOSUB 681: VTAB IV: GOSUB 721:X = 1: GOSUB 841: IF E = 1 THEN GOSUB 691: PRINT "Please type RUN and": PRINT "press RETURN. Try again.": GOTO 1261
1271 BS = X: GOSUB 1051: ON E = 1 GOTO 1261: GOSUB 1091: ON E = 1 GOTO 1261
1281 RETURN
1291 TT = TT(1):BT = BT(1):W = W(1):B = B(1):T = T(1):L = L(1): GOSUB 671: GOSUB 681: VTAB IV: GOSUB 721:X = 1: GOSUB 841: IF E = 1 THEN GOSUB 691: PRINT "Please type LIST and": PRINT "press RETURN. Try again.": GOTO 1291
1301 BS = X: GOSUB 1071: ON E = 1 GOTO 1291: GOSUB 1091: ON E = 1 GOTO 1291